热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

【邢不行|量化小讲堂系列01Python量化入门】如何快速上手使用Python进行金融数据分析

引言:邢不行的系列帖子“量化小讲堂”,通过实际案例教初学者使用python进行量化投资,了解行业研究方向,希望能对大家有帮助。【历史文章汇总】请点击此处【必读文章】EOS期现套利,

引言:

邢不行的系列帖子“量化小讲堂”,通过实际案例教初学者使用python进行量化投资,了解行业研究方向,希望能对大家有帮助。

【历史文章汇总】请点击此处

【必读文章】EOS期现套利,一周时间,15%无风险收益
10年400倍策略分享(附视频逐行代码讲解)

个人微信:xingbuxing0807,有问题欢迎交流。

文中用到的A股数据可在www.yucezhe.com下载,这里可以下载到所有股票、从上市日起的交易数据、财务数据、分钟数据、分笔数据、逐笔数据等。

如何快速上手使用Python进行金融数据分析

根据之前几篇系列帖子以及个人微信(xingbuxing0807)中的反馈,让我觉的很有必要写一篇如何快速上手使用Pyhton进行系列分析的帖子。本文主要以此为主题,介绍下我学习量化投资、Python的个人经验。

第一步:好奇心

不要为了学习而去学习一门编程语言,或者任何工具。一定要心里首先有一个问题,抱着解决问题的心态,去了解并学习这个工具是如何解决问题的。驱动你去学习量化投资的,应该是你的好奇心。你认为你有一个炒股独家的窍门,你认为你发现了某个规律,你非常好奇的想用历史数据去验证你的想法。比如我在大二的时候接触量化投资,就是因为我的好奇心。当时我看到一些入门的技术分析书上推荐KDJ这个技术指标,说KDJ低位金叉之后股票会涨,是个很好的买入信号,并且书上会配一些图,证明这个指标的有效性。我当时就很好奇,书上说的是不是真的?这几个配图是刻意挑选的还是有代表性的?是不是可以写个程序找出历史上所有的kdj金叉,看看之后涨的概率有多大?

这就是引领我入门的最初的好奇心。当时我不会编程,一开始用excel来试着验证,发现KDJ从大概率上来讲是不行的。好奇心继续升级:我调整一下KDJ默认的参数,效果会不会好一点?再配合一下其他的指标,效果会不会好一点?再加上点财务数据,效果会不会好一点……

慢慢的想测试的想法越来越多,excel渐渐的不够用,开始学习编程。我学习编程的目的性很强,就是解决我眼前的问题。对于解决我问题没有帮助的,我就先不学。一开始用的是SAS,自己找书看,论坛上发帖子问。后来觉得SAS太重,不灵活,慢慢的迁移到Python。

我是金融专业的,但是学校并不教量化投资,一切都是自己学。可想而知,若没有好奇心一直引导我去探索,这么长的一段时间我怎么可能坚持下来呢?

第二步:为什么Python

我推荐刚入门的量化投资研究者使用Python。主要理由如下:

1.适用性

Python配合各类第三方的package(例如下面要降到的pandas),是非常适合用来处理金融数据的

2.简单

相比于c,c#等语言,Python容易太多了。让你可以更快,更方便的对自己的想法进行测试。life is short, use Python。

3.全能

Matlab是另外一个金融分析领域的统治级语言,以上讲的两点适用性、简单性matlab都是具备的,在业界的使用范围应该是比Python要高的。

而Python相比于matlab的一大优势,那就是全能。matlab基本只能用于金融数据分析。但是Python除了拥有不亚于matlab的矩阵计算、科学计算能力之外,其他几乎任何事情都可以做。比如数据的清理、整理,比如从网页上抓取数据,比如进行文本信息的挖掘,比如做一个网站……现在学习一门语言,将来在任何地方都能用到。

第三步:如何入门Python

如果你有其他语言的编写经验(比如上过一个学期的编程课),有一定的编程基础。以下三步可以让你入门Python:

1.随便找一本Pyhton入门书。这些教程网上有很多很多,论坛里面也有很多,随便搜索一下就是。我稍微整理了下,放在附件中,回复可见。

2.挑一本Python入门书,不要花超过半天的时间,快速翻阅这本书。这个步骤不求记住什么东西,只要大概的知道这本书讲了什么,什么知识在这本书的哪一章写了就行,以便将来查阅。

3.结合自己的好奇心,给自己寻找一个问题,简单的复杂的都可以,找一点数据(地址),直接开始实战。遇到问题,第一步是去翻书,第二步是去google(别去百度),第三步是论坛发帖求助。若你没有什么思路或者问题,可我微信xingbuxing0807,我可以给你提供思路。

如果你没有任何编程的基础,那么想要入门Python,也是以上三个步骤。但是第2步,就不是仅仅花半天的时间浏览书了,而是要细细的看书。对着书上的例子,实际的操作下,大概花一个星期的时间的业余时间也就够了吧。

第四步:如何入门pandas

使用Python做金融数据分析,一定要用pandas。pandas是Python的一个第三方库,简直是金融数据分析的神器,第一次遇到它的时候让我泪流满面。了解pandas最好的途径就是他的官方文档:http://pandas.pydata.org/pandas-docs/stable/10min.html,当然也可以看我之前写的系列文章。

对本文研究有自己的想法的朋友,欢迎在评论区留言。关于文中的代码、数据,以及下期《量化小讲堂》想了解的内容,也可以加我个人微信xingbuxing0807交流。

《【邢不行|量化小讲堂系列01-Python量化入门】如何快速上手使用Python进行金融数据分析》 WechatIMG94.jpeg

如果你想入门量化,但是始终找不到方向,可以加入我的知识星球。我会在里面解答你的问题,分享我的感悟,不论是投资、技术,还是职业选择、思维方式。

— 学习和成长从来都不是一个人的事 —

《【邢不行|量化小讲堂系列01-Python量化入门】如何快速上手使用Python进行金融数据分析》 星球.png


推荐阅读
  • 如何实现织梦DedeCms全站伪静态
    本文介绍了如何通过修改织梦DedeCms源代码来实现全站伪静态,以提高管理和SEO效果。全站伪静态可以避免重复URL的问题,同时通过使用mod_rewrite伪静态模块和.htaccess正则表达式,可以更好地适应搜索引擎的需求。文章还提到了一些相关的技术和工具,如Ubuntu、qt编程、tomcat端口、爬虫、php request根目录等。 ... [详细]
  • 本文介绍了数据库的存储结构及其重要性,强调了关系数据库范例中将逻辑存储与物理存储分开的必要性。通过逻辑结构和物理结构的分离,可以实现对物理存储的重新组织和数据库的迁移,而应用程序不会察觉到任何更改。文章还展示了Oracle数据库的逻辑结构和物理结构,并介绍了表空间的概念和作用。 ... [详细]
  • 本文是一位90后程序员分享的职业发展经验,从年薪3w到30w的薪资增长过程。文章回顾了自己的青春时光,包括与朋友一起玩DOTA的回忆,并附上了一段纪念DOTA青春的视频链接。作者还提到了一些与程序员相关的名词和团队,如Pis、蛛丝马迹、B神、LGD、EHOME等。通过分享自己的经验,作者希望能够给其他程序员提供一些职业发展的思路和启示。 ... [详细]
  • 知识图谱——机器大脑中的知识库
    本文介绍了知识图谱在机器大脑中的应用,以及搜索引擎在知识图谱方面的发展。以谷歌知识图谱为例,说明了知识图谱的智能化特点。通过搜索引擎用户可以获取更加智能化的答案,如搜索关键词"Marie Curie",会得到居里夫人的详细信息以及与之相关的历史人物。知识图谱的出现引起了搜索引擎行业的变革,不仅美国的微软必应,中国的百度、搜狗等搜索引擎公司也纷纷推出了自己的知识图谱。 ... [详细]
  • 本文介绍了如何使用PHP向系统日历中添加事件的方法,通过使用PHP技术可以实现自动添加事件的功能,从而实现全局通知系统和迅速记录工具的自动化。同时还提到了系统exchange自带的日历具有同步感的特点,以及使用web技术实现自动添加事件的优势。 ... [详细]
  • 一、Hadoop来历Hadoop的思想来源于Google在做搜索引擎的时候出现一个很大的问题就是这么多网页我如何才能以最快的速度来搜索到,由于这个问题Google发明 ... [详细]
  • GetWindowLong函数
    今天在看一个代码里头写了GetWindowLong(hwnd,0),我当时就有点费解,靠,上网搜索函数原型说明,死活找不到第 ... [详细]
  • EPICS Archiver Appliance存储waveform记录的尝试及资源需求分析
    本文介绍了EPICS Archiver Appliance存储waveform记录的尝试过程,并分析了其所需的资源容量。通过解决错误提示和调整内存大小,成功存储了波形数据。然后,讨论了储存环逐束团信号的意义,以及通过记录多圈的束团信号进行参数分析的可能性。波形数据的存储需求巨大,每天需要近250G,一年需要90T。然而,储存环逐束团信号具有重要意义,可以揭示出每个束团的纵向振荡频率和模式。 ... [详细]
  • MACElasticsearch安装步骤及验证方法
    本文介绍了MACElasticsearch的安装步骤,包括下载ZIP文件、解压到安装目录、启动服务,并提供了验证启动是否成功的方法。同时,还介绍了安装elasticsearch-head插件的方法,以便于进行查询操作。 ... [详细]
  • 推荐系统遇上深度学习(十七)详解推荐系统中的常用评测指标
    原创:石晓文小小挖掘机2018-06-18笔者是一个痴迷于挖掘数据中的价值的学习人,希望在平日的工作学习中,挖掘数据的价值, ... [详细]
  • 本文介绍了在Mac上搭建php环境后无法使用localhost连接mysql的问题,并通过将localhost替换为127.0.0.1或本机IP解决了该问题。文章解释了localhost和127.0.0.1的区别,指出了使用socket方式连接导致连接失败的原因。此外,还提供了相关链接供读者深入了解。 ... [详细]
  • 本文介绍了一些好用的搜索引擎的替代品,包括网盘搜索工具、百度网盘搜索引擎等。同时还介绍了一些笑话大全、GIF笑话图片、动态图等资源的搜索引擎。此外,还推荐了一些迅雷快传搜索和360云盘资源搜索的网盘搜索引擎。 ... [详细]
  • 程序员如何选择机械键盘轴体?红轴和茶轴对比
    本文介绍了程序员如何选择机械键盘轴体,特别是红轴和茶轴的对比。同时还介绍了U盘安装Linux镜像的步骤,以及在Linux系统中安装软件的命令行操作。此外,还介绍了nodejs和npm的安装方法,以及在VSCode中安装和配置常用插件的方法。最后,还介绍了如何在GitHub上配置SSH密钥和git的基本配置。 ... [详细]
  • TPL实现Task.WhileAll扩展方法
    文章翻译整理自NikolaMalovic两篇博文:Task.WhileAllAwaitabletaskprogressreporting当Task.WhenAll遇见 ... [详细]
  • css div中文字位置_超赞的 CSS 阴影技巧与细节
    本文的题目是CSS阴影技巧与细节。CSS阴影,却不一定是box-shadow与filter:drop-shadow,为啥?因为使用其他属性 ... [详细]
author-avatar
UPI
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有